home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The Atari Compendium
/
The Atari Compendium (Toad Computers) (1994).iso
/
files
/
umich
/
utils
/
tosfixes
/
rsve_1.lzh
/
RSVE
/
HSMODEM1.TXT
< prev
next >
Wrap
Text File
|
1993-04-19
|
16KB
|
331 lines
HSMODEM1.PRG
============
HSMODEM1 ist ein Software-Beschleuniger und Patch für die serielle
Schnittstelle Modem1 der Atari-Computer. Es beseitigt nicht nur den auch im
TOS2.06/3.06 noch vorhandenen RTS/CTS-Handshakefehler, sondern erhöht durch
seine optimierten Routinen die mögliche Übertragungsrate wesentlich.
Außerdem wird der XBIOS-Iorec-Fehler des TOS2.05 beseitigt. Spätestens wenn
Fragen auftreten sollte man diesen Text komplett lesen und erst danach
seiner Umwelt oder mir die verbliebenen Fragen stellen. Bei Updates und
Zeitmangel zuerst einen Blick nach ganz hinten, Abschnitt "Versionen"!
Copyright
---------
Ich gestatte die Übersetzung dieser Dokumentation in andere Sprachen. Der
Übersetzer hat seine Tätigkeit entsprechend zu vermerken. Das deutsche
Original muß weiterhin beigelegt sein. Die im Folgenden genannten
Bedingungen gelten auch für die Übersetzung.
HSMODEM1 darf, aber immer nur zusammen mit diesem Text, zu nicht
kommerziellen Zwecken frei kopiert werden. Die Verbreitung auf PD-Disketten
zu üblichen Preisen ist zulässig. Ein Beipack zu Programmen ist ohne meine
Zustimmung nur zulässig, wenn diese PD oder Shareware mit einer maximalen
Registrierungsgebühr von 100DM sind. Jede Verbreitung zusammen mit
kommerziellen Programmen oder sonstige kommerzielle Verwertung,
ausgeschlossen jedoch die Anwendung (Programm starten), ist nur mit meiner
ausdrücklichen Genehmigung (möglicherweise gegen Gebühr) gestattet.
Interessenten können möglicherweise den Quelltext von mir erhalten. Das ist
nicht ganz kostenlos, aber auch für Hobbyisten bezahlbar.
Ich mag es nicht, an dieser Stelle zu schreiben: "Sollten Sie das Programm
länger als 3 Wochen (Testzeit) benutzen, so wird eine Registrierungsgebühr
in Höhe von xxxx fällig." Allerdings freue ich mich über kleine Spenden
(5DM und aufwärts) entweder an meine Postadresse oder auf mein Konto (bitte
Absender mit angeben). Ein kleiner Denkanstoß: Es ist nicht so, daß ich
wild drauflos auf immer und ewig für die Allgemeinheit billig arbeite.
Ich bin Student und muß nicht nur mein Hobby selbst finanzieren. Je mehr
ich an kommerziellen Auftragsarbeiten oder sonstigen finanziell
einträglichen Dingen arbeite(n muß), desto weniger Zeit bleibt für Projekte
dieser Art.
Die Betatester und ich haben dieses Programm sorgfältig überprüft. Ich
hafte in keiner Weise für:
- Fehler und/oder (daraus resultierende) Beschädigungen irgendwelcher
Objekte, Subjekte oder Werte.
- irgendwelche Auswirkungen des Einsatzes oder Nichteinsatzes dieses
Programmes und dieser Dokumentation
Fehlermeldungen oder Verbesserungsvorschläge nehme ich gern an. Ich hasse
allerdings unangemeldetes Auftauchen mir nicht persönlich bekannter
Personen sowie Telefonanrufe zu MICH störenden Zeiten. Es gibt schließlich
Email und die (gute) alte Post.
Ich bin im Mausnetz unter
Harun Scheutzow @B
zu erreichen. Meine Postanschrift lautet:
Harun Scheutzow
Dresdener Straße 83
O-1020 Berlin
Meine Bankverbindung:
Kontoinhaber: Harun Scheutzow
Kontonummer: 581854107
Bankleitzahl: 10010010
Bank: Postgiroamt Berlin
An dieser Stelle möchte ich allen danken, die mich bei der Entwicklung
dieses Programms unterstützt haben. Diese Unterstützung geht manchmal ganz
schön auf die Telefonrechnung!
Einsatzmöglichkeiten, Voraussetzungen, u.v.m.
------------------------------------------------
HSMODEM1 soll unter allen TOS-Versionen auf ATARI ST, STE, MegaST, MegaSTE
und TT laufen. Es läuft NICHT auf dem Falcon. Deshalb ist alles Folgende
nur für die Computer gültig, auf denen HSMODEM1 lauffähig ist. Je nach
TOS-Version integriert es sich unterschiedlich in das System. Dabei werden
nur dokumentierte Eigenschaften des TOS genutzt, obwohl das nicht einfach
war.
Es läuft auch mit MinT und sollte vor MinT im Auto-Ordner stehen. Dann
müßte MinT die HSMODEM1-Routinen für einen blockweisen Datentransfer nutzen
können. Ein nachträgliches Starten unter MinT funktioniert wohl auch und
bringt eventuell höhere Datenraten. (Ich arbeite nicht mit MinT.)
HSMODEM1 ist ein Ersatz für andere Modem1-Patches für Modem1, wie z.B.
RS232ENC oder TURBOCTS.
Die Schnittstelle Modem1 kann ohne Zusatzhardware maximal 19200Bd
erreichen. Daran ändert auch HSMODEM1 nichts. HSMODEM1 ersetzt aber die
langsamen und zum Teil fehlerhaften Routinen des TOS durch schnelle und
hoffentlich fehlerfreie. Mit Zusatzhardware, wie (dem von mir entwickelten)
RSVE, RSSpeed oder anderen können höhere Datenraten realisiert werden. Z.B.
erlaubt RSVE auch die Einstellung von 38400, 57600 und 115200Bd. HSMODEM1
sorgt dann im Rahmen der Hardware-Möglichkeiten für einen wesentlich
höheren Datendurchsatz (cps-Rate).
Wenn jemand meint, nur mit Software auf Modem1 mehr als 19200Bd zu
erreichen: Ohne Zusatzhardware können höhere Datenraten im Synchronbetrieb
des MFP erreicht werden. Dabei ist eine fehlerfreie Funktion aber
ausschließlich beim Senden möglich, und es wird kaum einer auf den Empfang
verzichten wollen.
Ich arbeite (immer noch) mit einem 8MHz ST, ohne CPU-Beschleuniger. Ich
halte wenig davon, immer neue und schnellere Computer zu kaufen und diese
durch lahme Software bis zum Stillstand zu bremsen. Das TOS ist eine lahme
Software, kein Wunder, es ist inklusive der Interruptroutinen in C
programmiert (es sieht so aus). Meine persönliche Meinung über die
TOS-Programmierer (Eric Smith ausgenommen) hat die (Selbst)Zensur an dieser
Stelle gelöscht.
TOS2.05-Fehler
--------------
Die XBIOS-Funktion 14, Iorec ist im TOS2.05 fehlerhaft (in 2.06, 3.05 und
3.06 ist sie definitiv in Ordnung). Sie liefert unabhängig von der
Einstellung über Bconmap bei der Abfrage der IOREC-Strukturadresse für AUX
(Nummer 0) immer die Adresse des Modem1-IOREC. Das führte mit früheren
HSMODEM1.PRGs zu schlechten cps-Raten und anderen Unannehmlickeiten. Jetzt
beseitigt HSMODEM1 auch dieses Problem, da es bei TOS2.05 die jeweils
passende IOREC-Adresse selbst liefert.
Wie schnell geht es?
--------------------
Das Problem bei einer seriellen Übertragung mit einer bestimmten
Geschwindigkeit (hier in Baud angegeben) ist nicht das Senden der Zeichen,
sondern deren Empfang. Der MFP puffert nur ein empfangenes Zeichen und
meldet es der CPU per Interrupt. Die CPU muß dieses Zeichen für eine
fehlerfreie Übertragung aus dem MFP abholen, bevor er das nächste Zeichen
komplett empfangen hat. Wenn ich sage, der Betrieb bei ... ist zuverlässig,
so bedeutet dies, daß die CPU bei der maximal möglichen
Empfangs-Zeichendichte (keine Pause zwischen Stoppbit des vorigen und
Startbit des folgenden Zeichens) jedes Zeichen rechtzeitig abholt.
Ein 8MHz ST (RSVE eingebaut) kann mit TOS und HSMODEM1 eine fehlerfreie
Datenübertragung mit 38400Bd realisieren. Eine fehlerfreie Datenübertragung
mit 57600Bd ist ebenfalls möglich, aber nicht mit dem originalen TOS.
Andere Interruptroutinen des TOS sind so unintelligent ausgelegt, daß sie
den zuverlässigen Betrieb mit 57600Bd verhindern. Auch auf MegaSTEs ist
57600Bd nicht immer zuverlässig. Siehe auch nächsten Abschnitt.
Derzeit erreicht ein 8MHz ST mit GSZRZ Version 3.3 von Michael Ziegler bei
einer ZMODEM-Übertragung und 38400Bd mehr als 3600cps, wenn NVDI
installiert und der Blitter ausgeschaltet ist. Ohne NVDI sind es etwa
300cps weniger, da GSZRZ lange an seiner Dialogbox zeichnen läßt. Den
Blitter kann man in den meisten Fällen auch zugeschaltet lassen. Sollten
aber Empfangsfehler auftreten, dann den Blitter abschalten. ZMODEM-Senden
bei 57600Bd erreicht mehr als 5000cps.
Die angegebenen Datenraten gelten für direkte Rechnerkopplung. Für langsame
Modems und schlechte Telefonleitungen ist HSMODEM1 nicht verantwortlich!
Zyxels können bei 16800zyx/v42bis und ASCII-Texten 3800cps erreichen,
Zyxel+ bei 19200zyx noch mehr. Andere 14400/v42bis-Modems liegen bei etwa
3300cps.
Das Konfigurationsfile
----------------------
Auf Wunsch einiger Nutzer kann HSMODEM1 nun Baudraten umlegen. Dies ist nur
zusammen mit RSVE oder RS-Speed nützlich. So kann man die Einschaltung von
38400Bd, die früher durch Einstellen von 110Bd erfolgte, auf